// 这是写购物车car的js
$(function () {
    //设置点击链接a取消跳转到顶部
    $("a").click(function () {
        return false;
    })

    // 1、全选与不全选模块功能  全选按钮checkall  单选按钮j-chaeck 
    $(".checkall").change(function () { // 利用change改变 则将单选按钮的属性prop（因为checked是复选框的固有属性）也改变
        // console.log();
        $(".j-check,.checkall").prop("checked", $(this).prop("checked"));
        if ($(this).prop("checked")) {
            $(".goods-list").addClass("goods-list-color");
        }else {
            $(".goods-list").removeClass("goods-list-color");
        }
        // 链式写法 ( ，) 将底下的全选也选上
    })
    // 2、如果选完所有的单选按钮，则全选按钮自动选上 ：checked选择器 查找被选中的表单元素
    $(".j-check").change(function () {
        /*if (选中的复选框 == 所有的复选框个数) {
            选中全选按钮
        } else {
            不选中全选按钮
        }*/
        if ($(".j-check:checked").length === $(".j-check").length) {
            $(".checkall").prop("checked", true);
        } else {
            $(".checkall").prop("checked", false);
        }
        if ($(this).prop("checked")) {
            $(this).parents(".goods-list").addClass("goods-list-color");
        }else {
            $(this).parents(".goods-list").removeClass("goods-list-color");
        }
    })
    // 3、表单属性值 修改购物车的数量
    // (1).首先声明一个变量，当点击+号，得到当前文本框兄弟的值就让这个值++，然后赋值给文本框
    $(".plus").click(function () {
        // (2).获取当前兄弟的val值
        var n = $(this).siblings(".itxt").val();
        n++;
        // (3).设置当前兄弟的val值
        $(this).siblings(".itxt").val(n);
        // (4).修改价格的值sum 注意 只能修改本商品的小计 用text()因为是普通盒子
        // var m = $(this).parent().parent().siblings().children(".price").html();  从当前盒子出发 往上找到price
        var m = $(this).parents(".yui3-u-1-8").siblings().children(".price").html();
        // 截取字符串 把￥去掉 好相乘
        m = m.substr(1);
        $(this).parents(".yui3-u-1-8").siblings().children(".sum").html("￥" + (m * n).toFixed(2));
        getSum();
    })
    $(".mins").click(function () {
        var n = $(this).siblings(".itxt").val();
        if (n == 1) {
            // 遇到return 则不执行后面的代码
            return false;
        }
        n--;
        $(this).siblings(".itxt").val(n);
        var m = $(this).parents(".yui3-u-1-8").siblings().children(".price").html(); // 从当前盒子出发 往上找到price
        m = m.substr(1);
        $(this).parents(".yui3-u-1-8").siblings().children(".sum").html("￥" + (m * n).toFixed(2));
        getSum();
    });
    // 4、 修改文本框的价格
    $(".itxt").change(function () {
        var n = $(this).val(); // 获取文本框修改后的值
        console.log(n);
        var m = $(this).parents(".yui3-u-1-8").siblings().children(".price").html(); // 获取单价
        m = m.substr(1);
        console.log(m);
        $(this).parents(".yui3-u-1-8").siblings().children(".sum").html("￥" + (m * n).toFixed(2));
        getSum();
    });
    // 5、计算总计和总额模块
    getSum();
    function getSum() {
        var count = 0; // 计算总件数
        var money = 0;
        $(".itxt").each(function (i, ele) {
            count += parseInt($(ele).val());
        });
        $(".sumprice-top em").text(count);
        $(".sum").each(function (i, ele) {
            money += parseFloat($(ele).html().substr(1));
        });
        $(".summoney").text("￥" + money.toFixed(2));
        // 记得在各个模块调用函数 getSum();
    }
    // 6、商品删除模块
    $(".remove").click(function () {
        $(this).parents(".goods-list").remove();
        getSum();
    })
    $(".remove-batch").click(function () {
        // 删除复原框选中的商品
        $(".j-check:checked").parents(".goods-list").remove();
        getSum();
    })
    $(".clear-all").click(function () {
        $(".goods-list").remove();
        getSum();
    })
})